package com.zhiche.lisa.lspm.service.upload;

import com.zhiche.lisa.core.supports.BaseException;
import com.zhiche.lisa.lspm.vo.attach.AttachInfoVO;
import com.zhiche.lisa.lspm.vo.attach.AttachKeyVO;
import com.zhiche.lisa.lspm.vo.common.GetUrlVO;

import java.util.List;

/**
 * 上传 service
 * @since 2018-06-05
 * @author lbl
 */
public interface UploadService {

    /**
     * 获取上传 token
     * @return
     */
    String getToken(String key);

    /**
     * 根据 key 获取 url
     * @param key
     * @return
     */
    GetUrlVO getUrl(String key,String type);

    /**
     * 根据key、宽度和高度获取 url
     * @param key
     * @return
     */
    GetUrlVO getUrl(String key,String type,String width,String heigth);

    /**
     * 获取附件信息
     * @param attachKeyVO
     * @return
     */
    List<AttachInfoVO> getAttachInfo(AttachKeyVO attachKeyVO);

    /**
     * 删除七牛上的文件
     * @param key
     */
    void deleteFile(String key) throws BaseException;

    /**
     * 得到下载路径
     * @param key
     * @return
     */
    String getStrUrl(String key);

    /**
     * 得到下载路径
     * @param key
     * @param width
     * @param heigth
     * @return
     */
    String getStrUrl(String key,String width,String heigth);
}
